سفارش تبلیغ
صبا ویژن

مقاله مروری بر سیستمهای عامل Unix, Minix, Xinu, Winnt در pdf

 

برای دریافت پروژه اینجا کلیک کنید

  مقاله مروری بر سیستم‌های عامل Unix, Minix, Xinu, Winnt در pdf دارای 77 صفحه می باشد و دارای تنظیمات و فهرست کامل در microsoft word می باشد و آماده پرینت یا چاپ است

فایل ورد مقاله مروری بر سیستم‌های عامل Unix, Minix, Xinu, Winnt در pdf   کاملا فرمت بندی و تنظیم شده در استاندارد دانشگاه  و مراکز دولتی می باشد.

این پروژه توسط مرکز مرکز پروژه های دانشجویی آماده و تنظیم شده است

توجه : توضیحات زیر بخشی از متن اصلی می باشد که بدون قالب و فرمت بندی کپی شده است

 

بخشی از فهرست مطالب پروژه مقاله مروری بر سیستم‌های عامل Unix, Minix, Xinu, Winnt در pdf

مقدمه
1- آدرس‌دهی 32 بیتی
مزیت های آدرس دهی 32 بیتی
2-VIRTUAL MEMORY (حافظه مجازی)
عیوب استفاده ازRAM
Mass STORAGE :HARD DISK
SWAP FILE
3-PREEMPTIVE MULTITASKING
THREAD
nonpreemptive
Preemptive multitasking
مقایسه nonpreemptive و Preemptive
4- symmetric multipocess
MULTIPROCESSING*
MULTIPROCESSING متقارن و نا متقارن
مزیتهاو عیوب سیستمها ی چند پرداشی نا متقارن
معایب سیستم های متقارن
THRAD
5- ساختارCLIENT/SERVER
CUENT/SERVER در ویندور NT
خصوصیت کنترل دستیابی
مقدمه
ساختار سیستم عامل xinu
زمانبندی و سوئیچ کردن:(Scheduling & Context Switching)
فرآیند پوچ (Null Process)
هماهنگی فرآیند ها (Process Coordination)
Interprocess Communication
مدیریت حافظه : (Memory Management)
Interrupt Processing
:Input Output Management
:Booting XINU
:File System
سیستم عامل MINIX
تاریخچه MINIX
1-1نگاهی به مراحل پردازش در minix
2-2 ساختمان داخلی minix
3-2 مراحل مدیریت فرآیند ها در minix
فلاپی و دیسک
4-2 مراحل جدول بندی شده در minix
1-1نگاهی به سیستم ورودی / خروجی در minix
2-3 برنامه مدیریت وقفه در سیستم minix
نرم افزار راه اندازی در سیستم unix
3-3 نرم افزار ورودی /خروجی غیر وابسته به وسایل سخت افزاری در minix
4-3 مدیریت وقفه در سیستم minix (Dead Lock)
5-3 دیسک گردان RAM
6-3 نگاهی به دیسک گردان فلاپی در سیستم minix
9-3 نگاهی به نرم افزار پایانه در minix
سیستم خروجی پایانه
1-4مدیریت حافظه در minix
2-4 شمای حافظه
نتیجه گیری
سیستم عامل UNIX
مقدمه
ساختار داخلی UNIX
ورود به UNIX
فایلها و دایرکتریهای در UNIX
UNIX Implementation (اجرای UNIX )
پردازشها در UNIX

 

مقدمه

ویندوز NT نسبت به سیستمهای عامل OS/2 و UNIX و ویندوز 16 بیتی دارای برتری‌هایی است که این خصوصیات و امکاناتی که ویندوز NT دارد، با یک سیستم عامل یا بیشتر نیز قابل دسترسی است. ولی هیچ‌کدام از سیتم عاملها قابلیتهای ویندوز NT را ندارد. در این قسمت مهمترین خصوصیات NT را معرفی می‌کنیم و یکسری خصوصیات کلیدی NT را شرح می‌دهیم

1- آدرس‌دهی 32 بیتی

در اینجا لازم است توضیحی در مورد اینکه آدرس چیست و نحوه آدرس‌دهی که میکروسافت DOS چگونه است بدهیم. آدرس کلاً محل یک بایت از اطلاعات در حافظه کامپیوتر یا Mass storage می‌گویند. آدرس بر دو نوع است. آدرس می‌تواند فیزیکی و یا می‌تواند مجازی باشد

1-1- آدرس‌دهی فیزیکی: به بایت داده معین در محل فیزیکی معینی از حافظه یا دیسک اشاره می‌کنند

2-1- آدرس‌دهی مجازی: به آدرس منطقی (نرم‌افزاری) اشاره می‌کند که سیستم عامل به آدرس فیزیکی معینی اشاره می‌کند

مطلب قابل توجه در انیجا این است که ویندوزNT از بین دو آدرس‌دهی، از آدرس‌دهی مجازی استفاده می‌کند که برای هر درخواست اصولاً چهار گیگابایت اختصاص داده می‌شود که البته 2 گیگابایت آن برای سیستم عامل منظور می‌شود

به دنبال پیشرفت مایکروسافت DOS به دلیل محدودیتهای حافظه، میکروپروسسورهایی از قبیل 8086 و 8088 شانزده بیتی که یک فضای آدرس‌دهی بیست بیتی را عرضه می‌داشتند طراحی کردند. یعنی در واقع این میکروپروسسورهای می‌توانستند یک مگابایت از حافظه را به طور فیزیکی آدرس‌دهی کنند. با توجه به این که بیست بیت به خوبی در کلمه (word) شانزده بیتی جای نمی‌گرفت مهندسین INTEL برای دستیابی به هر آدرس، طرحی به نام تقسیم حافظه ارائه دادند

در این نوع آدرس‌دهی آمدند یک مگابایت را به 16 قسمت تقسیم کردند که هر قسمت 64 کیلوبایتی با ghunk بود. این کار بدین دلیل بود که برنامه‌نویسان اصولاً در پردازنده‌های 8 بیتی قدیمی مانند INTEL 8085 و ZILOG Z80 با آدرس‌دهی 64 kdyte آشنایی داشتند

برای اینکه برنام‌نویسان بتوانند به هر آدرسی در داخل فضای آدرس یک مگابایتی دست پیدا کنند آدرس حافظه فیزیکی محاسبه شد. (قسمت در 16 ضرب کرده و سپس یک offset به آن اضافه می‌شود. نتیجه به بایت مورد نظر اشاره می‌کند.) بقیه پردازنده‌های 6 بیت مانند 68000 Motorola از آدرس‌دهی خطی استفاده می‌کردند که هربیت از حافظه مستقیماً و بدون استفاده از offset & segment آدرس‌دهی می‌کرد. و علاوه بر تسهیلاتی مانند MS-DOS 5.0 و windows 3.1، طراحان زیادی طرحهای خود را برای آدرس‌دهی و بیش از 640 کیلوبایت حافظه پیشنهاد کردند. می‌توان از معروفترین نمونه‌ها  QEMM QUALAS’ 386 MAو QUARTERDECK’S را نام برد

کل این و طرحها حافظه مورد استفاده را بیش از حد 640 کیلوبایتی بسط داند، ولی مجبور کردن آنها به کار با یک موقعیت خاص PC و دنباله درخواستها و تسهیلات نرم‌افزاری معمولاً یک هدر کردن زمان، پردازش خنثی‌کننده است. همیشه این‌طور به نظر می‌رسد که حداقل یک درخواست مهم با یکی از تسهیلات با مدیریت حافظه شما سازگار نیست

اولین پردازنده که فضای آدرس‌دهی خطی را به کار برد و نیز با DOS سازگاری داشت INTEL 386 بودکه می‌بایست تقسیم‌بندی حافظه در کنار آن احتیاج به مدیریت شخص ثالث را حذف کرد که در واقع فضای آدرس‌دهی 32 بیتی INTEL 386 با برنامه‌ها نوشته شده برای پردازنده‌های INTEL قبلی سازگاری نداشت

این برنامه‌های ناسازگار، DOS و تمام برنامه‌های اجرا شده تحت DOS بودند. برایایجاد سازگاری با DOS و درخواستهای آن INTEL یک طریقه دیگر آدرس‌دهی را طرح کرد بنام Real Mode

این نوع آدرس‌دهی با سایر نرم‌افزارهای قبل سازگاری داشت ولی متذسفانه در هنگام کار با این نوع آدرس‌دهی یعنی Real moed ، 386 و (486) بیش از یک 8086 خیلی سریع عمل نمی‌کند. DOS که در مقابل محدودیتهای 8086 و 8088 نوشته شده بود، هنوز بسیار شبیه نسخه سریع حد خود در سال 1981 با تمام محدودیتهای آدرس‌دهی عمل می‌کنند

دو طریق آدرس‌دهی حافظه

Real Mode : یک طریقه آدرس‌دهی حافظه است که از آدرس‌دهی نوع تقسیم‌بندی حافظه یعنی همان segment & offset استفاده می‌کنند. ماننده پردازنده INTEL

‍‍‍‍‍Protected Mode : یک طریقه دیگر آدرس‌دهی حافظه که برای دستیابی به بایت حافظه به جای segment & offset از آدرس‌دهی خطی استفاده می‌کند. این نوع آدرس‌دهی مشخصات حفاظت سخت‌افزاری که windows و windows NT آن را به کار گرفته‌اند، فعال می‌کند

windows NT برای تهیه آدرس‌دهی 32 بیتی واقعی Trune 32-bit addressing از آدرس‌دهی خطی 386 و 186 و پنتوم (INTELS586) و  همچنین  پردازنده  pisk  همچنون  Mips  و DigtalAlpha   استفاده  می کند.  قابل  ذکر است  که  دیگر  NT از  سازگار  بودن  با DOS و windos  16بیتی  صرفنظر می کند و دارای طرحی است بنام (viriul dos machine) که در این  صورت  این  امکان  را به  ویندوز NT می دهد که بتواند در خواستهای Dos و windows16 بیتی را اجرا کند (بعدا در مورد VDM صحبت خواهیم کرد )

مزیت های آدرس دهی 32 بیتی

 1-توسعه نرم افزار با حذف قسمت بندی حافظ آسانتر و سریع تر می شود

2- برنامه نویسان دیگر لآزم نیست حافظه مورد در خواستهایشان آشنا باشد

3-کارسیستم باحذف سربارپردازشی که موردلزوم مدیریت حافظه است بهبود می یابد.یعنی در  هیچ گونه نیازی به حافظه ثالثی ندارد.رهایی از مدیریت حافظه سازگاریهای   NT واقع ویندوز مختلف سخت افزار ونرم افزار را نیزحذفمی کندیعنی وضعیت استقرارنرم افزار می تواند ساده و 16 بیتی باشد WindowsیاDos  ابتدایی تر از

4- میزان برنامه قابل دسترسی و اندازه داده در آدرس دهی 32 بیتی زیاد می شود

      ویندوز NT از ترکیب برنامه و سیستم با اندازه چهار گیگا با یت که صدها برابر بزرگتر از حدودقابل اجرا روی بر نامه های DOS و ویندوز 16 بیتی  تشکیل شده است . فایلهای بزرگ که توسط    ویندوز NT قابل پردازش می باشد  غیر ممکن است که توسط DOS ویاwindos16 بیتی پردازش شوددر خواست کننده های  (در خواستهای ) پیچیده که فایلهای بزرگ را پردازش میکنند فقط با ویندوز NT عمل می کندو آن هم فقط به دلیل آدرس دهی 32 بیتی است . در خواستهای پیچیده همچون رزرواسیون، مبادله دارایی وسیستمهای  پردازش طلبهای بیمه است

از دیگر خصوصیات کلیدی ویندوز NT ،حافظه مجازی و یا VM است که در زیر توضیح می دهیم

2-VIRTUAL MEMORY   (حافظه مجازی)

        هر در خواست در ویندوز NT میتواند به 4 گیگا بایت حافظه دست پیدا کند (به خاطر فضای 32 بیتی )

که البته از مقدار تصور شده برای هر در خواست بیشتر است . دو نوع حافظه اصلی کامپیوتر به شرح زیر است

RAM :RAM  یا حافظه تصادفی (حافظه دسترسی تصادفی ) از نوع دیگر سریعتر است . مزیتهای آن به شرح زیر است

     1-PC برای اینکه بتوانند یک بایت داده را در 70 بیلیونیم ثانیه دریافت و بعد ذخیره کننداز RAM  استفاده می کنند

2-برنامه ها به طور مستقیم می توانند به آدرس حافظه بروند و بایت مورد نظر خود را دریافت کنند درواقع بجای اینکه به بلاک مورد نظر در روی دیسک مراجعه کند و با یتها ی بلاک را بایت به بایت بخواند وبه بایت مورد نظر برسد می تواند به طور مستقیم به آدرس حافظه بروند . ترجیحا استفاده از   RAM  را پیشنهاد می کنند

عیوب استفاده ازRAM

     1 -در هنگام قطع برق تمام اطلاعات ذخیره شده در RAMاز بین می رود.این نوع حافظه را VOLATL STORAGE نامیده میشود . در این جا قابل ذکر است که در بسیاری از کامپیوتر هایی که قابل حمل هستند

هنگامی که کامپیوتر خاموش است مقداری برق به حافظه RAM کامپیوترمی رسدکه باعث می شود داده های  ذخیره شده در آن از بین نرود و در هنگام تمام شدن باطری آن اطلاعات در آن با تمام شدن باطری از بین می رود

        2-عیب دیگر RAM ها در قیمت آن مشاهده می شودوآن نیزگران بودن قیمت RAMها است در واقع هر مگا بایت از RAM ها برای pc ها حدود 35  دلار فروخته می شود . از روی این قیمت می تواند تعداد  RAMهایی که در یک pc  می توان نصب کردرا حدس زد .اصولا به pc های  kigh-end 8 مگا بایت RAM  وصل می شود و این مقدار را خیلی ها می توانند تا 20 مگابایت افزایش دهند و بعضی نیز این مقدار را به 64  مگابایت میرسانند .برای این امر به RAM با چگالی بالا تری نیاز است که قیمت آن به ازای هر مگابایت افزایش می یابد ولی فضای فیزیکی کمتری را اشغال میکند نوع دیگر حافظه اصلی در کامپیوتر hard disk است که در زیر شرح داده شده است (نوع دیگر حافظه Mass storage  ها هستند که روی hard disk سواری می شوند

Mass STORAGE :HARD DISK

همان طور که در بالا گرفته شده نوع دیگر حافظه اصلی Mass storage ها هستند که بر رویhard disk سوار می شوندhard disk ها به مراتب کند تر از RAM ها هستند

از نظر قابلیت ذخیره سازی hard disk ها از 40 مگا بایت تا حدود 2 گیگا بایت قابلیت ذخیره سازی دارند

از نظر قیمت هم  یک pc hard 200 مگابایتی تقریبا 400 دلار ویا به عبارتی دو دلار به ازای هر مگا بایت می باشد که در مقایسه با قیمت RAM که در حدود  قیمت یک مگا بایت RAM است . در هنگام قطع برق محتویات hard ها از بین نمی رود به این گونه حافظه Nonvolatile storage می شود

استفاده از هر دو نوع حافظه برای pc ضروری به نظر می رسد.از RAM برای برنامه های اجرایی و ذخیره

دادههای حساس هنگامی که اجرا ضروریست استفاذه می شود واز hard disk   برای ذخیره طولانی اطلاعات در زمانی که قیمت به ازای هر بایت مهم می باشد، استفاده میشود

      در این جا یک سئوالی که پیش می آید این است که اگر به بیش از RAM قابل ذسترسی نیاز پیدا کردیم چه  می کنیم؟مثلآ فرض کنید که یک برنامهspreed sheet به دو مگا بایت وRAM  ویک فایل spreed sheetکه به دو مگا بایت احتیاج دارد  داشته باشیم . این سئوال پیش می آید که آیا فقط به همین 4 مگابایت  نیاز داریم ؟ خود سیستم عامل به مقداری زیاد RAM  احتاج دارد . پس ما میزان لازم RAM برای سیستم عامل و پردازنش speed sheet به طور همزمان در دست نداریم

            در DOS برای فراخوانی برنامه و داده اگر RAM به مقدارکافی نداشتیم مجبوربودیم یک RAM اضافه دیگر خریداری می کردیم وبه PC نصب می کردیم. ولی در ویندوز NT ما راه چاره ای داریم وآن این است که امکان تبدیل قسمتی از hard  به فضای RAM وجود دارد.به طوری که در خواستهایی بزرگتر از آن هستند که در حافظه RAM جای بگیرند ، می توانیم اجرا کنیم . این خصوصیت ویندوزNT  را viriual Memory  نامگذاری کردند . بعدا به طرز کار VM تحت ویندوز NT وتوضیح وشرح آن خواهیم پرداخت

        در هنگام نصب ویندوز NT (برای اولین )کاربران و یا مدیرسیستم موظف است که برنامه راه اندازNT را چک کند تا به فضای قابل دسترسی پذیرRAM  وHARDدر سیستم عالملی پی ببرد.برپایه فضای دسترسی پذیر دیسک   RAM یک swap file  ایجاد میکنند که اندازه آن حداکثر می تواند به اندازه RAM موجود در سیستم  باشد . در هنگام نصب ویندوز NT کاربر میتواند اندازهswap file  را تغییر بدهد . رابطه swap file  با حافظه مجازی از نظر اندازه مستقیم است . یعنی هر چه اندازه  swap file  بزرگ باشد ، حافظه مجازی  نیز  بزرگ میباشد. ولی قابل ذکر است که بزرگی آن تا اندازه فضای ذخیره سازی فایل ثابت، اذامه خواهد داشت

اندازه نهایی swap file را جابجایی وظرفیت کل دیسک مشخص می کند.در زیر توضیحی در مورد swap fileو این که swap file چیست می دهیم

 

SWAP FILE

swap file قسمتی از حافظه سخت است که توسط مدیریت حافظه مجازی بکار می رود که کارش در واقع نگهداری موقت بخشی از محتویات RAM است تا اینکه به سیستم این امکان داده شود که  برنامه هلآیی که از نظر اندازه از RAM قابل دسترسی بزرگترند ،را بتواند اجرا کند

دنباله بحث :بعد از نصب ویندوز NT  و اجرای آن swap file به عنوان یک انباره موقت برای محتویات RAM بکار برده می شود. در زیر دو وظیفه مهم مدیر حافظه مجازی را بررسی می کنیم

1-مدیریت  داده ذخیره شده بر روی دیسک وانتقال آدرس داده های روی پایه دیسک به فضای  آدرس دهی 32 بیتی ویندوز NT .در خواست میتواند عملیاتی را بر روی داده انجام دهد بدون اینکه توجه به  این داشته باشد که داده از نظر فیزیکی درکجا قرارگرفته است.یعنی میتواند عملآیاتی را برروی داده درفضای حافظه مجازی انجام دهد

2-در ویندوز NT  هنگامی که بخواهند از RAM بیشتر از آنچه که در دسترس است استفاده کنند این مدیریت حافظه مجازی است که قسمتی ازRAM رابه swap file منتقل می کندتا اینکه فضایی برای داده های لازم باز کند و در زمان لازم دوباره بهRAM بازگردانده می شود .برای جلوگیری از هدر رفتن زمان ،به جای اینکه داده ها بایت به بایت از RAM به ذیسک ویا از دیسک به RAM منتقل شوند ،این انتقال به این صورت است که داده های به صورت4kilopages منتقل می شوند نه بایت به بایت.برنامه درخواستی لزومی نداردکه  چیزی در مورد پردازش swaping بداند swaping تکرار شونده روی پاسخ خرابی سیستم وهمچنین روی فعالیتهای سنگین دیسک تاثیر گذار است

     برنامه ای که یک فایل راروی فضای آدرس دهی مجازی ویندوزطNT مورد پردازش قرار می دهد(روی  هارد )از نظر سرعت خیلی کند تر از برنامه ای است که از دادها در داخل RAM استفاده میکند .یعنی برنامه اولی از برنامه دومی کندتر اجرا می شود .مدیریت حافظه مجازی برای این طرحی که در فایلهای داده ای  خیلی بزرگتر و سیستمهای چند برنامه ای از به وجود آمدنswaping ها خیلی ضروری جلو گیری کند ولی در واقع میزان کار به مقدار RAM قابل دسترس بستگی دارد یعنی هر چه مقدار RAM قابل دسترس بیشترباشد کار کلی بیشتراست ویندوز 16 بیتی هم نیز از حافظه مجازی استفاده می کند ولی در طرز کار آن در ویندوز NT پیچیده تر است .اندازه فضای swap حافظه مجازی در ویندوز 16 بیتی وابسته به مقدار RAMقابل دسترس است وتا  تقریبا اندازه 30 مگا بایت مجاز است .این نکته قابل ذکر است که اگر کارتصمیم به حذف swap file ها با خاموش کردن حافظه مجازی بگیرد،و به این ترتیب در خواستهای بزرگتری را انجام دهد ،بهswap file این نیاز نیست

       این حدود اندازه swap file در ویندوز 16 بیتی برایtop disk desk ها (desk top pc ) ها مناسب میباشد .اگر مقدار ram دسترس پذیر شما در حدود 32 مگا بایت یا بیشتر باشد ،کمترین مقدارswap فضای   یکdiskرا اشغال میکنددرحالی که30مگابایت از فضایseap برای بسیاری تزدز خواستهایRAMبسیار کم  است .ولی ویندوز NT این خصوصیت را دارد که شما هر مقدار swap  (زیاد وکم )که نیازدارد ،اختصاص دهید . ولی این موضوع هم هست که حافظه مجازی نمی تواند جوابگوی تمام مشکلات با شد .این امکان را می دهد (حافظه مجازی )که با مقداریRAM محدود برنامه های بزرگ را پردازش کنیم ولی بدون توجه به سرعت  پردازش آن یعنی ممکن است سرعت پردازش خیلی کم باشد .در هنگام کار با ویندوز NTهنگامی که حافظه  مجازی مشغول مبادلهdata بهhard ازRAM بهhard ویا بالعکس است.توجه داشته باشیدکه به محض پایین آمدن کارایی سیستم ،به RAM اضافه کنیم.البته ممکن است که با اضافه کردن hard سریعتر به اصلاحاتی دست یابیم ولی مزایای بالا بردن مقدار دیسک سریعتر قابل مقایسه با اضافه کردن RAM  نمی باشد .از دیگر خصوصیات (خصوصیت سوم) در زیر توضیح داده می شود

3-PREEMPTIVE MULTITASKING

        این خصوصیت به معنا ی چند کاره بودن یعنی قابلیت چند کاره بودن کامپیوتر برای انجام یک سری عملیات در واحد زمان است.این عملیات،اجرای برنامه ویا پردازش یک برنامه و یا به تمام رساندن یک کار ، می تواند باشد .درNT برنامه وپردازش ها از اجرایی به نامthread تشکیل شده اند که بعد در مورد آنها بحث  می شود

 

THREAD

        معمولا قسمتی از پردازش به عهده سیستم عامل است که سیستم عامل آن را اجرا می کند که به آن قسمت thrad  گفته می شود . یک thred  نمی تواند متعلق به چند پردازش باشد ولی یک پردازش می تواند  چند thread داشته باشد و می توانند به وسیله طرحی چند thread را به طور همزمان  اجرا کند

        حال می خواهیم ببینیم مفهومmultiasking یعنی چه و برای چه کاری است؟برای اینکه به این مفهوم بیشتر آشنا بشوم قبل از هر توضیحی اشاره به مثالی می کنیم .می دانیم که نوشتن یک document کارراحتی  است.هنگامی که داریم باDOS کارمی کنیم وبخواهیم ازنوشته پرینت تهیه کنیم قبل ازانجام هر کاری بایست فرمها،نوع قلم،کدهای خاص را به کدها یی قابل فهم برای .چابگرتبدیل کنیم سپس سیستم را اندازه فایل را که می داند چاپگر توانایی تحمل آن را دارد به چابگر می فرستد. چاپگر و سیستم عامل انقدر به تبادل  اطلاعات ادامه می دهندکه تمام فایل به چاپگرفرستاده شود .در حین تبادل اطلاعات بین چابگر و سیستم عامل ،دیگر ما به عنوان یک کاربر هیچ کار دیگری نمی توانیم با کامپیوترانجام دهیم .وجود یک سیستم multitasking است که در اینجا لازم دیده می شود در واقعmultitasking این اجازه را به کاربرمی دهدکه همزمان با ارسال اطلاعات به چابگر ،بتواند عملیات دیگری بر روی کامپیوتر انجام دهد

           همانطور که میدانیم پردازنده در هر زمان فقط یک کار را انجام می دهد ولی این کارها سریع تغییروضعیت می دهد که به نظرمی آید در هرزمان بیش ازیک کارانجام می شود.مثل دیگری که برای فهم بهتر multitasking می شود زد ،در مورد فیلم است .اگر ما یک حلقه فیلم را جلوی نور بگیریم می بینم از تعدادی تصویر و عکس ثابت تشکیل شده است ولی آن را با یک پروژکتور به صورت 24 تصویر در ثانیه نمایش دهند ما همان تصویرهای ثابت رابه صورت یک فیلم متحرک می بینیم و برای ما غیر باور است که فکر کنیم آن همان عکسهای ثابت است که به صورت فیلم درآمده است .یک multitasking انعطاف پذیر خوب همانند این فیلم دنباله دار ومتحرک به نظر می آید

        در هنگام اجرای هر thread  ، کنترل تمام کامپیوتر بدست آنها می افتد ولی در بعضی اوقات سیستم عامل می آید این thread و اطلاعات ضروری برای سیستم را به محلی که مشابه swap شرح شده در قبل می باشد ، انتقال دهد و thread دیگر بداخل فرستاده می شود و اجراو سپس به خارج فرستاده می شود این عمل این قدر سریع انجام می شودکه کاربر احساس می کند thread ها با هم در یک زمان اجرا می گردد

        دو نوع multitasking وجود دارد که اول آنها را نام برده سپس شرحمی دهیم

1-preemptive

2-  nonpreemptive

nonpreemptive  

دراین نوع multitasking ، قبل از جایگزین یک thread در حال اجرا  با thread دیگر thread مشخص می کند که چه مدت زمان کار دارد

Preemptive multitasking  

هر thread برایش مقدار ثابتی زمان مشخص می شود تا در این زمان ثابت کار خود را انجام دهند که به این  زمانtimeslice گفته می شود.وقتی که یکthread زمانtime slic اش تمام شد موظف است که به خارج انتقال یابد. مسئله دیگری هم که است مسئله حق تقدم است یعنی یک thread با اولویت بالا میتواند جلوی اجرای thread با اولویت پایین تر را بگیرد.در عوض ویندوزNT که ازpreemptive استفاده می کند ویندوز 16 بیتی از multitasking از نوع nonpreemptive استفاده می کنیم

مقایسه nonpreemptive و Preemptive : 

 

برای دریافت پروژه اینجا کلیک کنید

کلمات کلیدی :